HAL PKA io operation functions migration ¶
This section provides information about the HAL PKA function migration.
HAL PKA abort ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_Abort(PKA_HandleTypeDef *hpka)
|
HAL_PKA_Abort(hal_pka_handle_t *hpka)
|
Note
The execution of an operation is split into two main functions:
HAL_PKA_SetConfig$Operation$to configure the mode and input parameters of the given operation.HAL_PKA_Compute/HAL_PKA_Compute_ITto start the computation in polling or interrupt modes whatever the operation is.
HAL PKA addition in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_Add(PKA_HandleTypeDef *hpka, PKA_AddInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigAdd(hal_pka_handle_t *hpka, const hal_pka_add_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA addition in interrupt mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_Add_IT(PKA_HandleTypeDef *hpka, PKA_AddInTypeDef *in);
|
HAL_PKA_SetConfigAdd(hal_pka_handle_t *hpka, const hal_pka_add_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA get result of arithmetic operations ¶
In HAL2, the
HAL_PKA_Arithmetic_GetResult
has been split into multiple specialized functions to retrieve the result of a specific arithmetic operation.
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_Arithmetic_GetResult(PKA_HandleTypeDef *hpka, uint32_t *pRes)
|
HAL_PKA_GetResultAdd(hal_pka_handle_t *hpka, uint8_t *p_result)
HAL_PKA_GetResultSub(hal_pka_handle_t *hpka, uint8_t *p_result)
HAL_PKA_GetResultCmp(hal_pka_handle_t *hpka, uint8_t *p_result)
HAL_PKA_GetResultMul(hal_pka_handle_t *hpka, uint8_t *p_result)
HAL_PKA_GetResultModAdd(hal_pka_handle_t *hpka, uint8_t *p_result)
HAL_PKA_GetResultModSub(hal_pka_handle_t *hpka, uint8_t *p_result)
HAL_PKA_GetResultModInv(hal_pka_handle_t *hpka, uint8_t *p_result)
HAL_PKA_GetResultModRed(hal_pka_handle_t *hpka, uint8_t *p_result)
HAL_PKA_GetResultMontgomeryMul(hal_pka_handle_t *hpka, uint8_t *p_result)
|
HAL PKA comparison in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_Cmp(PKA_HandleTypeDef *hpka, PKA_CmpInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigCmp(hal_pka_handle_t *hpka, const hal_pka_cmp_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA comparison in interrupt mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_Cmp_IT(PKA_HandleTypeDef *hpka, PKA_CmpInTypeDef *in);
|
HAL_PKA_SetConfigCmp(hal_pka_handle_t *hpka, const hal_pka_cmp_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA ECC complete addition in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCCompleteAddition(PKA_HandleTypeDef *hpka, PKA_ECCCompleteAdditionInTypeDef *in,
uint32_t Timeout);
|
HAL_PKA_ECC_SetConfigCompleteAdd(hal_pka_handle_t *hpka,
const hal_pka_ecc_complete_add_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA get result of ECC complete addition ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCCompleteAddition_GetResult(PKA_HandleTypeDef *hpka,
PKA_ECCCompleteAdditionOutTypeDef *out);
|
HAL_PKA_ECC_GetResultCompleteAdd(hal_pka_handle_t *hpka,
hal_pka_ecc_complete_add_result_t *p_result);
|
HAL PKA ECC complete addition with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCCompleteAddition_IT(PKA_HandleTypeDef *hpka, PKA_ECCCompleteAdditionInTypeDef *in);
|
HAL_PKA_ECC_SetConfigCompleteAdd(hal_pka_handle_t *hpka,
const hal_pka_ecc_complete_add_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA ECC double base ladder in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCDoubleBaseLadder(PKA_HandleTypeDef *hpka, PKA_ECCDoubleBaseLadderInTypeDef *in,
uint32_t Timeout);
|
HAL_PKA_ECC_SetConfigDoubleBaseLadder(hal_pka_handle_t *hpka,
const hal_pka_ecc_double_base_ladder_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA get result of ECC double base ladder ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCDoubleBaseLadder_GetResult(PKA_HandleTypeDef *hpka,
PKA_ECCDoubleBaseLadderOutTypeDef *out);
|
HAL_PKA_ECC_GetResultDoubleBaseLadder(hal_pka_handle_t *hpka,
hal_pka_ecc_double_base_ladder_result_t *p_result);
|
HAL PKA ECC double base ladder with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCDoubleBaseLadder_IT(PKA_HandleTypeDef *hpka, PKA_ECCDoubleBaseLadderInTypeDef *in);
|
HAL_PKA_ECC_SetConfigDoubleBaseLadder(hal_pka_handle_t *hpka,
const hal_pka_ecc_double_base_ladder_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA ECC multiplication ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCMul(PKA_HandleTypeDef *hpka, PKA_ECCMulInTypeDef *in, uint32_t Timeout);
/* or */
HAL_PKA_ECCMulEx(PKA_HandleTypeDef *hpka, PKA_ECCMulExInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_ECC_SetConfigMulProtect(hal_pka_handle_t *hpka, const hal_pka_ecc_mul_protect_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
Note
For some STM32 series, instead of using
HAL_PKA_ECC_SetConfigMulProtect(hal_pka_handle_t
*hpka,
const
hal_pka_ecc_mul_protect_config_t
*p_config), use
HAL_PKA_ECC_SetConfigMul(hal_pka_handle_t
*hpka,
const
hal_pka_ecc_mul_config_t
*p_config).
HAL PKA ECC multiplication in interrupt mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCMul_IT(PKA_HandleTypeDef *hpka, PKA_ECCMulInTypeDef *in);
/* or */
HAL_PKA_ECCMulEx_IT(PKA_HandleTypeDef *hpka, PKA_ECCMulExInTypeDef *in);
|
HAL_PKA_ECC_SetConfigMulProtect(hal_pka_handle_t *hpka, const hal_pka_ecc_mul_protect_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
Note
For some STM32 series, instead of using
HAL_PKA_ECC_SetConfigMulProtect(hal_pka_handle_t
*hpka,
const
hal_pka_ecc_mul_protect_config_t
*p_config), use
HAL_PKA_ECC_SetConfigMul(hal_pka_handle_t
*hpka,
const
hal_pka_ecc_mul_config_t
*p_config).
HAL PKA get result of ECC multiplication ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCMul_GetResult(PKA_HandleTypeDef *hpka, PKA_ECCMulOutTypeDef *out);
|
In normal mode:
HAL_PKA_ECC_GetResultMul(hal_pka_handle_t *hpka, hal_pka_ecc_mul_result_t *p_result);
In fast mode:
HAL_PKA_ECC_GetResultMulFast(hal_pka_handle_t *hpka, hal_pka_ecc_mul_fast_result_t *p_result);
In protect mode:
HAL_PKA_ECC_GetResultMulProtect(hal_pka_handle_t *hpka, hal_pka_ecc_mul_protect_result_t *p_result);
|
HAL PKA ECC projective to affine with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCProjective2Affine_IT(PKA_HandleTypeDef *hpka,
PKA_ECCProjective2AffineInTypeDef *in);
|
HAL_PKA_ECC_SetConfigProjectiveToAffine(hal_pka_handle_t *hpka, const hal_pka_ecc_projective_to_affine_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA get result of ECC projective to affine ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCProjective2Affine_GetResult(PKA_HandleTypeDef *hpka,
PKA_ECCProjective2AffineOutTypeDef *out);
|
HAL_PKA_ECC_GetResultProjectiveToAffine(hal_pka_handle_t *hpka,
hal_pka_ecc_projective_to_affine_result_t *p_result);
|
HAL PKA ECDSA signature generation ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECDSASign(PKA_HandleTypeDef *hpka, PKA_ECDSASignInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_ECDSA_SetConfigSignatureProtect(hal_pka_handle_t *hpka,
const hal_pka_ecdsa_signature_protect_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
Note
For some STM32 series, instead of using
HAL_PKA_ECDSA_SetConfigSignatureProtect(hal_pka_handle_t
*hpka,
const
hal_pka_ecdsa_signature_protect_config_t
*p_config), use
HAL_PKA_ECDSA_SetConfigSignature(hal_pka_handle_t
*hpka,
const
hal_pka_ecdsa_signature_config_t
*p_config).
HAL PKA get ECDSA signature result ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECDSASign_GetResult(PKA_HandleTypeDef *hpka, PKA_ECDSASignOutTypeDef *out,
PKA_ECDSASignOutExtParamTypeDef *outExt);
|
HAL_PKA_ECDSA_GetResultSignatureProtect(hal_pka_handle_t *hpka,
hal_pka_ecdsa_signature_protect_result_t *p_result,
hal_pka_ecdsa_signature_result_ext_config_t *p_result_ext);
|
Note
For some STM32 series use
HAL_PKA_ECDSA_GetResultSignature(hal_pka_handle_t
*hpka,
hal_pka_ecdsa_signature_result_t
*p_result,
hal_pka_ecdsa_signature_result_ext_config_t
*p_result_ext)
instead.
HAL PKA ECDSA signature in interrupt mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECDSASign_IT(PKA_HandleTypeDef *hpka, PKA_ECDSASignInTypeDef *in);
|
HAL_PKA_ECDSA_SetConfigSignatureProtect(hal_pka_handle_t *hpka,
const hal_pka_ecdsa_signature_protect_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
Note
For some STM32 series, instead of using
HAL_PKA_ECDSA_SetConfigSignatureProtect(hal_pka_handle_t
*hpka,
const
hal_pka_ecdsa_signature_protect_config_t
*p_config), use
HAL_PKA_ECDSA_SetConfigSignature(hal_pka_handle_t
*hpka,
const
hal_pka_ecdsa_signature_config_t
*p_config).
HAL PKA ECDSA signature verification ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECDSAVerif(PKA_HandleTypeDef *hpka, PKA_ECDSAVerifInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_ECDSA_SetConfigVerifSignature(hal_pka_handle_t *hpka,
const hal_pka_ecdsa_verif_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA ECDSA verification with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECDSAVerif_IT(PKA_HandleTypeDef *hpka, PKA_ECDSAVerifInTypeDef *in);
|
HAL_PKA_ECDSA_SetConfigVerifSignature(hal_pka_handle_t *hpka,
const hal_pka_ecdsa_verif_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA ECDSA signature valid ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECDSAVerif_IsValidSignature(PKA_HandleTypeDef const *const hpka);
|
HAL_PKA_ECDSA_IsValidVerifSignature(const hal_pka_handle_t *hpka);
|
HAL PKA modular addition in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModAdd(PKA_HandleTypeDef *hpka, PKA_ModAddInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigModAdd(hal_pka_handle_t *hpka, const hal_pka_mod_add_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA modular addition with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModAdd_IT(PKA_HandleTypeDef *hpka, PKA_ModAddInTypeDef *in);
|
HAL_PKA_SetConfigModAdd(hal_pka_handle_t *hpka, const hal_pka_mod_add_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA modular exponentiation in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModExp(PKA_HandleTypeDef *hpka, PKA_ModExpInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigModExp(hal_pka_handle_t *hpka, const hal_pka_mod_exp_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
Related use case: Use case: PKA in polling mode
HAL PKA fast mode modular exponentiation in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModExpFastMode(PKA_HandleTypeDef *hpka, PKA_ModExpFastModeInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigModExpFast(hal_pka_handle_t *hpka, const hal_pka_mod_exp_fast_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA fast mode modular exponentiation with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModExpFastMode_IT(PKA_HandleTypeDef *hpka, PKA_ModExpFastModeInTypeDef *in);
|
HAL_PKA_SetConfigModExpFast(hal_pka_handle_t *hpka, const hal_pka_mod_exp_fast_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA protected modular exponentiation mode in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModExpProtectMode(PKA_HandleTypeDef *hpka, PKA_ModExpProtectModeInTypeDef *in,
uint32_t Timeout);
|
HAL_PKA_SetConfigModExpProtect(hal_pka_handle_t *hpka, const hal_pka_mod_exp_protect_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA protected modular exponentiation mode with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModExpProtectMode_IT(PKA_HandleTypeDef *hpka, PKA_ModExpProtectModeInTypeDef *in);
|
HAL_PKA_SetConfigModExpProtect(hal_pka_handle_t *hpka, const hal_pka_mod_exp_protect_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA get result of modular exponentiation ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModExp_GetResult(PKA_HandleTypeDef *hpka, uint8_t *pRes);
|
In normal mode:
HAL_PKA_GetResultModExp(hal_pka_handle_t *hpka, uint8_t *p_result);
In fast mode:
HAL_PKA_GetResultModExpFast(hal_pka_handle_t *hpka, uint8_t *p_result);
In protect mode:
HAL_PKA_GetResultModExpProtect(hal_pka_handle_t *hpka, uint8_t *p_result);
|
HAL PKA modular exponentiation with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModExp_IT(PKA_HandleTypeDef *hpka, PKA_ModExpInTypeDef *in);
|
HAL_PKA_SetConfigModExp(hal_pka_handle_t *hpka, const hal_pka_mod_exp_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
Related use case: Use case: PKA in interrupt mode
HAL PKA modular inversion in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModInv(PKA_HandleTypeDef *hpka, PKA_ModInvInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigModInv(hal_pka_handle_t *hpka, const hal_pka_mod_inv_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA modular inversion with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModInv_IT(PKA_HandleTypeDef *hpka, PKA_ModInvInTypeDef *in);
|
HAL_PKA_SetConfigModInv(hal_pka_handle_t *hpka, const hal_pka_mod_inv_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA modular reduction in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModRed(PKA_HandleTypeDef *hpka, PKA_ModRedInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigModRed(hal_pka_handle_t *hpka, const hal_pka_mod_red_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA modular reduction with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModRed_IT(PKA_HandleTypeDef *hpka, PKA_ModRedInTypeDef *in);
|
HAL_PKA_SetConfigModRed(hal_pka_handle_t *hpka, const hal_pka_mod_red_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA modular subtraction in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModSub(PKA_HandleTypeDef *hpka, PKA_ModSubInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigModSub(hal_pka_handle_t *hpka, const hal_pka_mod_sub_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA modular subtraction with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ModSub_IT(PKA_HandleTypeDef *hpka, PKA_ModSubInTypeDef *in);
|
HAL_PKA_SetConfigModSub(hal_pka_handle_t *hpka, const hal_pka_mod_sub_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA montgomery multiplication in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_MontgomeryMul(PKA_HandleTypeDef *hpka, PKA_MontgomeryMulInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigMontgomeryMul(hal_pka_handle_t *hpka, const hal_pka_montgomery_mul_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA montgomery multiplication with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_MontgomeryMul_IT(PKA_HandleTypeDef *hpka, PKA_MontgomeryMulInTypeDef *in);
|
HAL_PKA_SetConfigMontgomeryMul(hal_pka_handle_t *hpka, const hal_pka_montgomery_mul_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA computes montgomery parameters in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_MontgomeryParam(PKA_HandleTypeDef *hpka, PKA_MontgomeryParamInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigMontgomery(hal_pka_handle_t *hpka, const hal_pka_montgomery_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA get montgomery parameter result ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_MontgomeryParam_GetResult(PKA_HandleTypeDef *hpka, uint32_t *pRes);
|
HAL_PKA_GetResultMontgomery(hal_pka_handle_t *hpka, uint8_t *p_result);
|
HAL PKA computes montgomery parameters with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_MontgomeryParam_IT(PKA_HandleTypeDef *hpka, PKA_MontgomeryParamInTypeDef *in);
|
HAL_PKA_SetConfigMontgomery(hal_pka_handle_t *hpka, const hal_pka_montgomery_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA multiplication in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_Mul(PKA_HandleTypeDef *hpka, PKA_MulInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigMul(hal_pka_handle_t *hpka, const hal_pka_mul_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA multiplication with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_Mul_IT(PKA_HandleTypeDef *hpka, PKA_MulInTypeDef *in);
|
HAL_PKA_SetConfigMul(hal_pka_handle_t *hpka, const hal_pka_mul_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA point check in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_PointCheck(PKA_HandleTypeDef *hpka, PKA_PointCheckInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_ECC_SetConfigPointCheck(hal_pka_handle_t *hpka, const hal_pka_point_check_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA point check with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_PointCheck_IT(PKA_HandleTypeDef *hpka, PKA_PointCheckInTypeDef *in);
|
HAL_PKA_ECC_SetConfigPointCheck(hal_pka_handle_t *hpka, const hal_pka_point_check_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA point check on curve ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_PointCheck_IsOnCurve(PKA_HandleTypeDef const *const hpka);
|
HAL_PKA_ECC_IsPointCheckOnCurve(const hal_pka_handle_t *hpka);
|
HAL PKA RAM reset ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_RAMReset(PKA_HandleTypeDef *hpka);
|
HAL_PKA_RAMMassErase(hal_pka_handle_t *hpka);
|
HAL PKA RSA CRT exponentiation in polling ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_RSACRTExp(PKA_HandleTypeDef *hpka, PKA_RSACRTExpInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_RSA_SetConfigCRTExp(hal_pka_handle_t *hpka, const hal_pka_rsa_crt_exp_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA get RSA CRT exponentiation result ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_RSACRTExp_GetResult(PKA_HandleTypeDef *hpka, uint8_t *pRes);
|
HAL_PKA_RSA_GetResultCRTExp(hal_pka_handle_t *hpka, uint8_t *p_result);
|
HAL PKA RSA CRT exponentiation with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_RSACRTExp_IT(PKA_HandleTypeDef *hpka, PKA_RSACRTExpInTypeDef *in);
|
HAL_PKA_RSA_SetConfigCRTExp(hal_pka_handle_t *hpka, const hal_pka_rsa_crt_exp_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA subtraction in polling ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_Sub(PKA_HandleTypeDef *hpka, PKA_SubInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_SetConfigSub(hal_pka_handle_t *hpka, const hal_pka_sub_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA subtraction with interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_Sub_IT(PKA_HandleTypeDef *hpka, PKA_SubInTypeDef *in);
|
HAL_PKA_SetConfigSub(hal_pka_handle_t *hpka, const hal_pka_sub_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|
HAL PKA ECC fast mode multiplication in polling mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCMulFastMode(PKA_HandleTypeDef *hpka, PKA_ECCMulFastModeInTypeDef *in, uint32_t Timeout);
|
HAL_PKA_ECC_SetConfigMulFast(hal_pka_handle_t *hpka, const hal_pka_ecc_mul_fast_config_t *p_config);
HAL_PKA_Compute(hal_pka_handle_t *hpka, uint32_t timeout_ms);
|
HAL PKA ECC fast mode multiplication in interrupt mode ¶
|
HAL1 |
HAL2 |
|---|---|
HAL_PKA_ECCMulFastMode_IT(PKA_HandleTypeDef *hpka, PKA_ECCMulFastModeInTypeDef *in);
|
HAL_PKA_ECC_SetConfigMulFast(hal_pka_handle_t *hpka, const hal_pka_ecc_mul_fast_config_t *p_config);
HAL_PKA_Compute_IT(hal_pka_handle_t *hpka);
|